Fix a surface leak
authorРуслан Ижбулатов <lrn1986@gmail.com>
Sun, 27 Dec 2015 02:02:19 +0000 (02:02 +0000)
committerРуслан Ижбулатов <lrn1986@gmail.com>
Sun, 27 Dec 2015 02:02:19 +0000 (02:02 +0000)
Was introduced as part of b79a187d47ee5c45952fab60c141fcaed7e05ef6.
Results in memory leaks (and GDI objects leaks on W32).

gtk/gtkiconhelper.c

index 6ad6e7263fddc4173124022fd80ebab129f9a8bb..3671c5fc8c5e37ef07e01cf9cec335b59400a1ee 100644 (file)
@@ -575,6 +575,9 @@ gtk_icon_helper_ensure_surface (GtkIconHelper *self)
 {
   int scale;
 
+  if (self->priv->rendered_surface)
+    return;
+
   scale = gtk_widget_get_scale_factor (gtk_css_gadget_get_owner (GTK_CSS_GADGET (self)));
 
   self->priv->rendered_surface = gtk_icon_helper_load_surface (self, scale);